//package com.mydemo.utils.dataUtils.selectUtils;
//
//import com.mydemo.utils.dataUtils.JsonAndFile.FileRW;
//
//import java.util.ArrayList;
//import java.util.List;
//import java.util.stream.Collectors;
//
//import static com.mydemo.utils.dataUtils.JsonAndFile.Deserialize.deserialize;
//
//public class Query<T> extends Select {
//    private Class<T> clazz;
//    private String table;
//    private List<QueryCondition> conditions = new ArrayList<>();
//
//    public Query(Class<T> clazz, String table) {
//        super(clazz,table);
//    }
//
//    public Query<T> where(String column, Object value) {
//        conditions.add(new QueryCondition(column, value));
//        return this;
//    }
//
//    public List<T> execute() {
//        String jsonRead = FileRW.FileRead(table);
//        List<T> objectList = deserialize(jsonRead,clazz);
//
//        // 使用流和过滤器应用所有条件
//        return objectList.stream()
//                .filter(this::matchesConditions)
//                .collect(Collectors.toList());
//    }
//
//    private boolean matchesConditions(T item) {
//        return conditions.stream()
//                .allMatch(condition -> condition.matches(item));
//    }
//
//    // QueryCondition类用于封装单个查询条件
//    private class QueryCondition {
//        private String column;
//        private Object value;
//
//        public QueryCondition(String column, Object value) {
//            this.column = column;
//            this.value = value;
//        }
//
//        public boolean matches(T item) {
//            Object fieldValue = getFieldValue(item, column);
//            return value.equals(fieldValue);
//        }
//    }
//}